package com.fruitshop.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fruitshop.entity.Fruit;
import com.fruitshop.vo.FruitVO;

import java.util.List;

/**
 * 水果服务接口
 */
public interface FruitService extends IService<Fruit> {
    
    /**
     * 分页查询水果列表
     *
     * @param page       页码
     * @param pageSize   页大小
     * @param categoryId 分类ID
     * @param keyword    关键词
     * @return 水果分页列表
     */
    Page<FruitVO> pageList(Integer page, Integer pageSize, Long categoryId, String keyword);
    
    /**
     * 获取水果详情
     *
     * @param id 水果ID
     * @return 水果详情
     */
    FruitVO getDetail(Long id);
    
    /**
     * 获取热门水果列表
     *
     * @param limit 限制数量
     * @return 热门水果列表
     */
    List<FruitVO> listHotFruits(Integer limit);
    
    /**
     * 获取推荐水果列表
     *
     * @param limit 限制数量
     * @return 推荐水果列表
     */
    List<FruitVO> listRecommendFruits(Integer limit);
} 